#[钛妹]: 老哥！Python字典拷贝为啥不能直接等号赋值呀？
#[钛哥]: 因为等号只是创建快捷方式呀！就像：
original = {"水果": "苹果"}
copycat = original
copycat["水果"] = "香蕉"  # 原版也会被改哦
print(original)  # 输出{'水果': '香蕉'}

#[钛妹]: 哇真的哎！那安全克隆怎么做呢？
#[钛哥]: 两个绝招！第一招copy大法：
car = {"brand": "特斯拉", "续航": 600}
clone1 = car.copy()
clone1["颜色"] = "午夜蓝"  # 原版不受影响
print(car.keys())  # 输出dict_keys(['brand', '续航'])

#[钛妹]: 第二招是不是用dict转换呀？
#[钛哥]: 聪明！看这个：
phone = {"型号": "钛坦X", "内存": "16GB"}
clone2 = dict(phone)
clone2["屏幕"] = "2K"
print(phone)  # 原字典保持纯净

#[钛妹]: 那多层嵌套字典怎么操作呀？
#[钛哥]: 像俄罗斯套娃那样写！看：
universe = {
    "银河系": {
        "太阳系": {
            "地球": ["人类", "AI"]
        },
        "仙女座": {"直径": "22万光年"}
    }
}
print(universe["银河系"]["太阳系"]["地球"][1])  # 输出AI

#[钛妹]: 如果分开创建再组合呢？
#[钛哥]: 完全OK！比如：
cpu = {"核心": "骁龙8Gen3"}
gpu = {"性能": "Adreno750"}
device = {"处理器": cpu, "显卡": gpu}
device["处理器"]["工艺"] = "4nm" 
print(cpu)  # 被修改了哦！

#[钛妹]: 遍历套娃字典有什么技巧吗？
#[钛哥]: 双重循环拿下！看这个：
for area, galaxies in universe.items():
    print(f"★{area}★")
    for galaxy, info in galaxies.items():
        print(f"|-{galaxy}:")
        for k, v in info.items():
            print(f"  ▸{k}:{v}")

#[钛哥]: 重点总结：
# 1. 浅拷贝用copy()或dict()
clone = original.copy()
# 2. 嵌套字典可以多级访问 
print(device["a"]["b"]["c"])
# 3. 遍历嵌套需要多层循环
for k1, v1 in device.items():
    for k2, v2 in v1.items():

#[钛妹]: 原来如此！这下做数据建模再也不怕套娃结构了～
#[钛妹]: 对了各位！持续学习才是硬道理！点赞关注不迷路！